package Service.serviceImpl;

import Dao.daoImpl.EmpDaoImpl;
import Model.Emp;
import Service.UserService;

import java.util.ArrayList;
import java.util.Scanner;

public class EmpService implements UserService {
    EmpDaoImpl empDao = new EmpDaoImpl();

    //查询
    @Override
    public void showEmp(ArrayList<Emp> emp) {
        System.out.println("业务逻辑开始了");
        empDao.showEmpDao(emp);
    }

    //删除
    @Override
    public void delEmp(ArrayList<Emp> emp, String empId) {
        empDao.delEmpDao(emp, empId);
    }

    //修改两种方法

    /**
     *  System.out.println("1.改姓名");
     *             System.out.println("2.该性别");
     *             System.out.println("3.改年龄");
     *             System.out.println("4.改职务");
     *             int menu = scanner.nextInt();
     *             switch (menu) {
     *                 case 1:
     *                     System.out.println("给改的姓名是:" + emp.get(j).getName());
     *                     System.out.println("请输入更改的名字");
     *                     emp.get(j).setName(scanner.next());
     *                     break;
     *                 case 2:
     *                     System.out.println("给改的性别是:" + emp.get(j).getSex());
     *                     System.out.println("请输入更改的性别");
     *                     emp.get(j).setSex(scanner.next());
     *                 case 3:
     *                     System.out.println("给改的年龄是:" + emp.get(j).getAge());
     *                     System.out.println("请输入更改的年龄");
     *                     emp.get(j).setAge(scanner.nextInt());
     *                 case 4:
     *                     System.out.println("给改的工作是:" + emp.get(j).getJob());
     *                     System.out.println("请输入更改的工作");
     *                     emp.get(j).setJob(scanner.next());
     */
    @Override
    public boolean updateEmp(ArrayList<Emp> emp, String empId) {
        Scanner scanner = new Scanner(System.in);
        int j = empDao.updateEmpDao(emp, empId);
        if (j < 0) {
            return false;
        } else {
            System.out.println("你要更新的员工姓名是:" + emp.get(j).getName());
            System.out.print("请输入你要更新的名字是:");
            String s = scanner.nextLine();
            if (s.equals("")) {

            } else {
                emp.get(j).setName(s);
            }
//            emp.get(j).setName(scanner.next());
            System.out.println("你要更新的员工性别是:" + emp.get(j).getSex());
            System.out.print("请输入你要更新的性别是:");
            String s1 = scanner.nextLine();
            if (s1.equals("")) {

            } else {
                emp.get(j).setSex(s1);
            }
//            emp.get(j).setSex(scanner.next());
            System.out.println("你要更新的年龄是:" + emp.get(j).getAge());
            System.out.print("请输入你要更新的年龄是:");
            String s3 = scanner.nextLine();
            if (s3.equals("")) {

            } else {
                int a = Integer.parseInt(s3);
                emp.get(j).setAge(a);
            }
//            emp.get(j).setAge(scanner.nextInt());
            System.out.println("你要更新的员工工作是:" + emp.get(j).getJob());
            System.out.print("请输入你要更新的工作是:");
            String s4 = scanner.nextLine();
            if (s4.equals("")) {

            } else {
                emp.get(j).setJob(s4);
            }
//            emp.get(j).setJob(scanner.next());
            return true;

        }
    }

    /*增加
                体现员工信息的逻辑层
                @param emp Array 数据集合 地址
                @param user 一条员工信息
             */
    @Override
    public void addEmp(ArrayList<Emp> emp, Emp user) {
        //System.out.println("111len = " + len);
        System.out.println("user.toString()=" + user.toString());
        //System.out.println("业务逻辑开始啦，要去找数据访问层了");
        //访问DAO层实现信息添加操作
        empDao.addEmpDao(emp, user);

    }
}
